package com.mililoan.model.system;

import java.io.Serializable;
import java.util.ArrayList;

import org.apache.commons.lang3.StringUtils;

import com.mililoan.model.common.UserRight;

/**
 * 系统用户表 domain
 * @author taochen
 * @version 1.0
 * @since 2017-08-24
 */
public class User extends UserRight implements Serializable {
	
	private static final long serialVersionUID = 5725113474232969010L;
	/**
     * 主键
     */
    private long id;
    /**
     * 帐户
     */
    private String userAcct;
    /**
     * 密码
     */
    private String userPwd;
    /**
     * 用户姓名
     */
    private String userName;
    /**
     * 性别
     */
    private String sex;
    /**
     * 部门编号
     */
    private long departmentCode;
    private String departmentName;
    /**
     * 办公电话
     */
    private String telephone;
	private String telCitycode;		// 电话区号
	private String telLocalnumber;		// 电话座机号
	private String telExtension;		// 电话分机号
    /**
     * 手机电话
     */
    private String mobile;
    /**
     * 电子邮件
     */
    private String email;
    /**
     * 登陆时间
     */
    private String userLogintime;
    /**
     * 登陆ip
     */
    private String userLoginip;
    /**
     * 0 无效 1有效
     */
    private String isvalid;
    
	private String noUserCodes; 	//排除
    
    /**
     * 获取 主键
     * 
     * @return 主键
     */
   	public long getId(){
        return id;
    }
        
    /**
     * 设置 主键
     * 
     * @param id 设置主键
     */
    public void setId(long id){
        this.id = id;
    }
    
    /**
     * 获取 帐户
     * 
     * @return 帐户
     */
   	public String getUserAcct(){
        return userAcct;
    }
        
     /**
     * 设置 帐户
     * 
     * @param userAcct 设置帐户
     */
    public void setUserAcct(String userAcct){
        this.userAcct = userAcct;
    }
    
    /**
     * 获取 密码
     * 
     * @return 密码
     */
   	public String getUserPwd(){
        return userPwd;
    }
        
     /**
     * 设置 密码
     * 
     * @param userPwd 设置密码
     */
    public void setUserPwd(String userPwd){
        this.userPwd = userPwd;
    }
    
    /**
     * 获取 用户姓名
     * 
     * @return 用户姓名
     */
   	public String getUserName(){
        return userName;
    }
        
     /**
     * 设置 用户姓名
     * 
     * @param userName 设置用户姓名
     */
    public void setUserName(String userName){
        this.userName = userName;
    }
    
    /**
     * 获取 性别
     * 
     * @return 性别
     */
   	public String getSex(){
        return sex;
    }
        
     /**
     * 设置 性别
     * 
     * @param sex 设置性别
     */
    public void setSex(String sex){
        this.sex = sex;
    }
    
    /**
     * 获取 部门编号
     * 
     * @return 部门编号
     */
   	public long getDepartmentCode(){
        return departmentCode;
    }
        
     /**
     * 设置 部门编号
     * 
     * @param departmentCode 设置部门编号
     */
    public void setDepartmentCode(long departmentCode){
        this.departmentCode = departmentCode;
    }
    
    /**
     * 获取 办公电话
     * 
     * @return 办公电话
     */
   	public String getTelephone(){
   		this.telephone = telCitycode + "-" + telLocalnumber + "-" + telExtension;
        return telephone;
    }
        
     /**
     * 设置 办公电话
     * 
     * @param telephone 设置办公电话
     */
    public void setTelephone(String telephone){
        this.telephone = telephone;
        if (telephone != null) {
			String[] tel = telephone.split("-");
			if (tel.length > 0)
				this.telCitycode = tel[0];
			if (tel.length > 1)
				this.telLocalnumber = tel[1];
			if (tel.length > 2)
				this.telExtension = tel[2];

			this.telCitycode = (null == telCitycode) ? "" : telCitycode;
			this.telLocalnumber = (null == telLocalnumber) ? "" : telLocalnumber;
			this.telExtension = (null == telExtension) ? "" : telExtension;
			this.telephone = telephone;
		}
    }
    
    /**
     * 获取 手机电话
     * 
     * @return 手机电话
     */
   	public String getMobile(){
        return mobile;
    }
        
     /**
     * 设置 手机电话
     * 
     * @param mobile 设置手机电话
     */
    public void setMobile(String mobile){
        this.mobile = mobile;
    }
    
    /**
     * 获取 电子邮件
     * 
     * @return 电子邮件
     */
   	public String getEmail(){
        return email;
    }
        
     /**
     * 设置 电子邮件
     * 
     * @param email 设置电子邮件
     */
    public void setEmail(String email){
        this.email = email;
    }
    
    /**
     * 获取 登陆时间
     * 
     * @return 登陆时间
     */
   	public String getUserLogintime(){
        return userLogintime;
    }
        
     /**
     * 设置 登陆时间
     * 
     * @param userLogintime 设置登陆时间
     */
    public void setUserLogintime(String userLogintime){
        this.userLogintime = userLogintime;
    }
    
    /**
     * 获取 登陆ip
     * 
     * @return 登陆ip
     */
   	public String getUserLoginip(){
        return userLoginip;
    }
        
     /**
     * 设置 登陆ip
     * 
     * @param userLoginip 设置登陆ip
     */
    public void setUserLoginip(String userLoginip){
        this.userLoginip = userLoginip;
    }
    
    /**
     * 获取 0 无效 1有效
     * 
     * @return 0 无效 1有效
     */
   	public String getIsvalid(){
        return isvalid;
    }
        
     /**
     * 设置 0 无效 1有效
     * 
     * @param isvalid 设置0 无效 1有效
     */
    public void setIsvalid(String isvalid){
        this.isvalid = isvalid;
    }

	public String getNoUserCodes() {
		return noUserCodes;
	}

	public void setNoUserCodes(String noUserCodes) {
		this.noUserCodes = noUserCodes;
	}

	public String getDepartmentName() {
		return departmentName;
	}

	public void setDepartmentName(String departmentName) {
		this.departmentName = departmentName;
	}

	public String getTelCitycode() {
		return telCitycode;
	}

	public void setTelCitycode(String telCitycode) {
		this.telCitycode = telCitycode;
	}

	public String getTelLocalnumber() {
		return telLocalnumber;
	}

	public void setTelLocalnumber(String telLocalnumber) {
		this.telLocalnumber = telLocalnumber;
	}

	public String getTelExtension() {
		return telExtension;
	}

	public void setTelExtension(String telExtension) {
		this.telExtension = telExtension;
	}
}


